#include <iostream>
#include <vector>

void BubbleSort(std::vector<int>& a)
{
    int n = a.size();
    bool swapped;
    for(int i = 0; i < n - 1; i++)
    {
        swapped = false;
        for(int j = 0; j < n - 1 - i; ++j)
        {
            if(a[j] > a[j + 1])
             {
                 std::swap(a[j], a[j + 1]);
                 swapped = true;
             }  
        }
        if( !swapped) break;
    }
}

int main()
{
    std::vector<int> arr = {5, 1, 3, 2, 4};
    BubbleSort(arr);
    for(int x : arr)
        std::cout << x << ' ';
    return 0;
}